1. Field
It is related to a reproduction device and a reproducing method, and more particularly, to a device and method for reading information recorded on an optical recording medium.
2. Description of the Related Art
An optical disc is a recording media for recording information with high density. Information is optically read (reproduced) from the optical disc. When a blemish or smear is on the surface of the optical disc, data cannot be accurately read from the optical disc. Further, when the optical disc rotates irregularly during data reading, the amount of data recorded on the disk may differ from the amount of data generated by processing reflection light from the disk. Accordingly, in addition to user data, code information (correction code) for correcting the read data (error correction) is recorded on the optical disc. However, the read data may not be corrected depending on the condition of the read data. Thus, there is a demand for improvements in reading performance of the optical disc.
In the prior art, to improve the reading performance, a correction code calculated for every predetermined amount of user data is recorded on an optical disc, such as a digital video disk or digital versatile disk (DVD). As shown in FIG. 1, a data block BD recorded on an optical disc includes a predetermined amount of user data UD (172 bytes×192 rows (12 rows×16 sectors)), a ten-byte correction code PI for each row of the user data UD calculated from the data in the column direction of the user data UD (B(x, 0) to B(x, 171)), and a sixteen-byte correction code PO (B(192, y) to B(207, y)) for each column calculated from the correction code PI and data in the row direction of the user data UD (B(0, y) to B(191, y)). Some of the correction codes PO are also used as the correction codes PI. The correction codes PI and the correction codes PO are used in error correction (processing for identifying a data error position and calculating a correction value) performed when data is read from the optical disc. The data arrangement sequence (order) of the data block BD is important in the error correction.
In the error correction, each row and column of the data block BD is processed as a codeword, and each column and row undergoes the error correction. More specifically, one data block BD is processed as 208 data rows H0 to H207 or as 182 data columns V0 to V181 as shown in FIG. 1. Errors are corrected in the user data UD and the correction code data PO for each of the data rows H0 to H207 using the user data UD or the correction code data PO and the correction code data PI. Further, errors are corrected in the user data UD and the correction data PO for each of the data columns V0 to V181 using the user data UD or the correction code data PI and the correction code data PO.
As shown in FIG. 2, each of the data rows H192 to H207 for the correction codes PO in the data block BD is inserted (interleaved) between every twelve data rows of the user data UD. One recording sector is constructed by the twelve rows of the user data UD and one row of the correction code data PO. As a result, one data block BD includes sixteen recording sectors C0 to C15.
Data included in the data block BD undergoes eight-to-sixteen modulation. More specifically, eight bits of data, or one byte, is modulated into data having sixteen channel bits (cb). As shown in FIG. 3, one of eight synchronization (sync) codes SY0 to SY7 is added to every 91 bytes (1456 cb) of modulation data. Each sync code has two bytes (32 cb). One sync frame is formed by the 91-byte modulation data and the 2-byte sync code. The sync codes are added to the modulation data in a predetermined order. The sync codes enable identification of the modulation data that is currently being read. The data shown in FIG. 3 is recorded to an optical disc sequentially from the top left. Data is read from the optical disc in order starting from the top left in FIG. 3.
When data is correctly read from the optical disc, a processing circuit receives the read data as a plurality of data segments divided by sync codes as shown in FIG. 4. The processing circuit stores the data segment between two sync codes in a memory 100. When the each data segment reaches 91 bytes, a data block BD (FIG. 1) recorded on the optical disc is stored in the memory. Thus, error correction is accurately performed on the user data with the correction code data PI and the correction code data PO.
A blemish or smear on the surface of the disc or irregular rotation of the disc may result in loss of a sync code or some of the user data. This may also produce excessive data. For example, referring to FIG. 5, when two bytes of data between two sync codes SY5 are missing, the processing circuit stores 91 bytes of data segment (D1) following the former one of the two sync codes SY5 in the memory 100. Then, the processing circuit processes the following two bytes as a sync code and stores the 89 bytes of data segment (D2) following that sync code in the memory 100. When the missing two bytes correspond to the sync code SY1 shown in FIG. 4, the data segment D2 is stored in the memory 100 at a position deviating by two bytes from its correct storage position. Thus, each value in the data segment D2 is processed as an error when the error correction is performed in the direction of the correction code PO. In other words, 91 bytes of data segment are determined as being defective. Such defective data may not be corrected depending on the position or amount of the defective data. In such a case, the entire data block BD is determined as being defective. This lowers the reading performance of the optical disc.